There are many accessories available for mobile terminals today. For example, typical accessories include hands free headsets, hands free car kits, data cables for connecting to external devices such as personal computers and laptops, and camera attachments.
Each accessory can have a series of associated functions. For example, a hands free headset unit may include a microphone input as well as audio output. Furthermore, the audio output supported by the headset may be either mono audio or stereo audio depending on the capabilities of the headset. Alternatively, the accessory may be a data cable for connecting the mobile terminal to a laptop, where the data cable can provide input/output functions for the flow of data to and from the mobile terminal via the data cable.
An accessory is connected to a mobile terminal via a suitable connector or interface. The interface may be a direct wired interface or a wireless interface such as Bluetooth. Once the accessory is connected to the mobile terminal, the mobile terminal determines the functions provided by the accessory, and which must be supported by the mobile terminal. The detection of the accessory and determining the functions corresponding to the accessory is based on the reading an identification number associated with the accessory.
Each accessory stores an identification number which can be read by the mobile terminal. The identification number corresponds to a predetermined set of functions provided by the accessory and a mode of operation for each of those functions. These functions must be supported by the mobile terminal in the predetermined mode.
For example, the may be a hands free headset, the accessory functions may include the audio output capabilities of the earphones, and the mode for the audio output capabilities may be stereo audio output or mono audio output. Alternatively, the accessory function may be more specific such as microphone, and the mode may be either on or off.
The mobile terminal stores a list of accessory identification numbers together with a corresponding set of accessory functions and modes for each stored identification number. Any accessories with identification numbers that are not stored by the mobile terminal may not have their functions supported, be supported in the incorrect mode, or the accessory may not be recognised altogether.
FIG. 1 illustrates an example of a system block in which the identification number for an accessory is stored. The system block is an accessory control interface (ACI) software (SW) 1.0 system block. The system block comprises data stored by an accessory which is read by a mobile terminal.
The system block comprises five bytes of data divided into various fields, some of which are divided into sub-fields. These include BlockID (one byte), DataLength (one byte), Accessory_type_high (one byte), Accessory_type_low (one byte) and a parity byte.
The Accessory_type_high field comprises a Mastertype sub-field (6 bits) and SubType most significant bit sub-field (2 bits). The Accessory_type_low sub-field comprises a SubType least significant sub-bit field (3 bits) and an Accessory_ID sub-field (5 bits).
The identification number associated with an accessory is made up the Accessory_type_high field and Accessory_type_low field.
When an accessory using the system block illustrated in FIG. 1 is connected to a mobile terminal, the mobile terminal reads the identification number comprising the data in the Accessory_type_high field and the Accessory_type_low field. The mobile terminal then matches the read identification number with an identification number stored in the mobile terminal to determine the set of accessory functions and corresponding modes which are provided by the accessory and which should be supported by the mobile terminal.
Any accessory that has an identification number that is not stored in the mobile terminal, and therefore not matched by the mobile terminal, may either not be recognised, or the functions provided by the accessory may not be supported by the mobile terminal, at least in the correct mode.
As mobile terminals are generally manufactured and sold with a fixed list of accessory identification numbers, for any new accessories to work with an existing mobile terminal, which has a set list of identification numbers stored, the new accessories must use one of the identification numbers already stored in the mobile terminal. Otherwise, the mobile terminal will not recognise the new identification number. The new accessory is therefore limited to the specific set of accessory functions and associated modes defined by an existing identification number, even if the new accessory can provide new improved accessory functions or new combinations of accessory functions.
Furthermore, it is not possible to update the software or memory in a mobile terminal to include new identification numbers to support new accessories to overcome this problem once the mobile terminal has left the manufacturer.
There is therefore a need for an improved mobile terminal capable of supporting various accessory functions that at least partly mitigate some of the above problems.